package com.ruoyi.order.domain;

import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.List;

/**
 * 生成员工提成及报销模版表对象 wx_form
 * 
 * @author ruoyi
 * @date 2024-09-04
 */
public class WxForm extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键，会有选项表进行关联 */
    private Long id;

    /** 针对订单类型生成的表单（0:自驾，1:配驾） */
    @Excel(name = "针对订单类型生成的表单", readConverterExp = "0=:自驾，1:配驾")
    private Long orderType;

    /** 表单名称 */
    @Excel(name = "表单名称")
    private String formName;

    /** 组织架构id，设计组织架构分为根节点平台，二级节点商户，三级节点门店。此处存储为二级组织架构节点，保证表单可看 */
    @Excel(name = "组织架构id，设计组织架构分为根节点平台，二级节点商户，三级节点门店。此处存储为二级组织架构节点，保证表单可看")
    private Long deptId;

    /** 是否为公用表单，公用表单所有用户将都可见 */
    @Excel(name = "是否为公用表单，公用表单所有用户将都可见")
    private Boolean isPublic;

    /** 是否启用 */
    @Excel(name = "是否启用")
    private Boolean isEnable;

    /** 是否是模版 */
    @Excel(name = "是否是模版")
    private Integer isTemplate;

    /** 生成单时出现的选项信息信息 */
    private List<WxFormItem> wxFormItemList;

    public Boolean getPublic() {
        return isPublic;
    }

    public void setPublic(Boolean aPublic) {
        isPublic = aPublic;
    }

    public Boolean getEnable() {
        return isEnable;
    }

    public void setEnable(Boolean enable) {
        isEnable = enable;
    }

    public Integer getIsTemplate() {
        return isTemplate;
    }

    public void setIsTemplate(Integer isTemplate) {
        this.isTemplate = isTemplate;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setOrderType(Long orderType) 
    {
        this.orderType = orderType;
    }

    public Long getOrderType() 
    {
        return orderType;
    }
    public void setFormName(String formName) 
    {
        this.formName = formName;
    }

    public String getFormName() 
    {
        return formName;
    }
    public void setDeptId(Long deptId) 
    {
        this.deptId = deptId;
    }

    public Long getDeptId() 
    {
        return deptId;
    }
    public void setIsPublic(Boolean isPublic)
    {
        this.isPublic = isPublic;
    }

    public Boolean getIsPublic()
    {
        return isPublic;
    }

    public void setIsEnable(Boolean isEnable)
    {
        this.isEnable = isEnable;
    }

    public Boolean getIsEnable()
    {
        return isEnable;
    }

    public List<WxFormItem> getWxFormItemList()
    {
        return wxFormItemList;
    }

    public void setWxFormItemList(List<WxFormItem> wxFormItemList)
    {
        this.wxFormItemList = wxFormItemList;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("orderType", getOrderType())
            .append("formName", getFormName())
            .append("deptId", getDeptId())
            .append("isPublic", getIsPublic())
            .append("isEnable", getIsEnable())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("createBy", getCreateBy())
            .append("updateBy", getUpdateBy())
            .append("wxFormItemList", getWxFormItemList())
            .toString();
    }
}
